package org.jeecg.modules.demo.zc.chargingPile.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("ZC_CHARGING_PILE")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="ChargingPile对象", description="ChargingPile")
public class ChargingPile implements Serializable {
    private static final long serialVersionUID = 1L;

    /**id*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "ID")
    private String id;
    /**充电桩编号*/
    @Excel(name = "充电桩编号", width = 15)
    @ApiModelProperty(value = "充电桩编号")
    private String pileCode;
    /**关联泊车位 ID*/
    @Excel(name = "关联泊车位 ID", width = 15)
    @ApiModelProperty(value = "关联泊车位 ID")
    private String parkingSpaceId;
    /**类型  1:- FAST（快充）  2:- SLOW（慢充）  3:- HYBRID（快慢充一体）*/
    @Excel(name = "类型", width = 15)
    @ApiModelProperty(value = "类型")
    @Dict(dicCode = "chargingPile_pileType")
    private String pileType;
    /**充电标准*/
    @Excel(name = "充电标准", width = 15)
    @ApiModelProperty(value = "充电标准")
    private String standard;
    /**功率 （kW）*/
    @Excel(name = "功率", width = 15)
    @ApiModelProperty(value = "功率")
    private Double power;
    /**接口数量*/
    @Excel(name = "接口数量", width = 15)
    @ApiModelProperty(value = "接口数量")
    private Integer interfaceCount;
    /**状态： 1:- IDLE（空闲）  2:- IN_USE（使用中）  3:- FAULT（故障）  4:- OFFLINE（离线）  5:- MAINTENANCE（维护中）*/
    @Excel(name = "状态", width = 15)
    @ApiModelProperty(value = "状态")
    @Dict(dicCode = "chargingPile_status")
    private Integer status;
    /**安装时间*/
    @Excel(name = "安装时间", width = 15)
    @ApiModelProperty(value = "安装时间")
    @JsonFormat(timezone ="GMT+8",pattern ="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date installTime;
    /**创建时间*/
    @Excel(name = "创建时间", width = 15)
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(timezone ="GMT+8",pattern ="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String remarks;
}
